package com.pond.pond.domain;

import com.pond.common.core.web.domain.BaseEntity;
import com.pond.pond.validation.ValidPondSeat;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
import java.util.List;

/**
 * 钓位信息对象 pond_seat
 * 
 * @author ruoyi
 * @date 2025-06-09
 */
@Getter
@Setter
@ValidPondSeat
public class Appointment extends BaseEntity
{
    private static final long serialVersionUID = 1L;
    private Long id;                // 预约ID
    private Long userId;            // 钓友ID
    private Long deptId;            // 钓场ID
    private String deptName;        // 鱼塘名称
    private String nickName;            // 钓友名称
    private Long pondId;            // 鱼塘ID
    private String pondName;        // 鱼塘名称
    /**
     * 预约状态：
     * 0 - 待签到
     * 1 - 已签到
     * 2 - 已取消
     * 3 - 已完成
     * 4 - 爽约（未签到过期）
     * 5 - 管理员确认签到
     */
    private Integer status;
    private Date createTime;
    private Date updateTime;

    // 关联的预约时间段列表（可选，方便业务逻辑）
    private List<AppointmentTimeSegment> timeSegments;
}